home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Ray Dream Studio
/
Ray Dream Studio (CDRAYD1) (Ray Dream) (1995).iso
/
DREAMSDK.WIN
/
INCLUDE
/
XANIMAPI.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-09-08
|
6KB
|
113 lines
// $Id: xanimapi.h 1.45 1995/09/04 17:23:38 PIERRE Exp $
// Ray Dream, Inc. Confidential and Proprietary information.
// Copyright (c) 1994-1995 Ray Dream, Inc. All rights reserved.
#ifndef __XANIMAPI__
#define __XANIMAPI__
#ifndef __MTYPES__
#include "MTypes.h"
#endif
class RDList;
class RDPoint;
class RDRect;
class LPoint;
class LRect;
class SDGraphicDevice;
class Riostream;
class Tweener;
class TimeRuler;
class MTimeBased;
class QuickFixVector3;
struct TFacette;
struct TPatch;
class Iterator;
class QFixMatrix33;
class QuickFix;
class XTimeLineM;
class RPlatformEvent;
class XTimeBased;
//----------------
// TimeManager / XTimeManager
class XTimeManager;
typedef void(*XTimeManagerSetTimeProc)(XTimeManager *This,long time);
typedef long (*XTimeManagerGetTimeProc)(const XTimeManager *This);
typedef void(*XTimeManagerReadProc)(XTimeManager *This,Riostream *stream);
typedef void(*XTimeManagerWriteProc)(const XTimeManager *This,Riostream *stream);
typedef void(*XTimeManagerEnableEventCreaterProc)(XTimeManager *This,Boolean enable);
//----------------
// TimeBaseData
class TimeBaseData;
typedef TimeBaseData* (*XTimeBasedNewProc)();
typedef void (*XTimeBasedDeleteProc)(TimeBaseData *This);
typedef void (*XTimeBasedSetXTimeBasedProc)(TimeBaseData *This,XTimeBased *aTB);
typedef void (*XTimeBasedWriteWithKeywordProc)(TimeBaseData *data,Riostream *stream,long keyword);
typedef void (*XTimeBasedReadProc)(TimeBaseData *data,Riostream *stream);
typedef void (*XTimeBasedCopyDataProc)(const TimeBaseData *data,TimeBaseData *timebased);
typedef void (*XTimeBasedSetTimeManagerProc)(TimeBaseData *data,XTimeManager *timeManager);
typedef Boolean (*XTimeBasedCheckParamForReadProc)(TimeBaseData *data,short index);
typedef void (*XTimeBasedMarkModifiedProc)(TimeBaseData *data,short index);
typedef short (*XTimeBasedSetParamProc)(TimeBaseData *data,void *aparam,const char *itsName,long itsID,long itsType);
typedef void (*XTimeBasedSetTypeProc) (TimeBaseData *data,long itsType,const char *className);
typedef short (*XTimeBasedSetParamGroupProc) (TimeBaseData *data,MTimeBased *agroup,const char *itsName,long itsID);
typedef void (*XTimeBasedChangeParamGroupProc) (TimeBaseData *data,MTimeBased *agroup,short index);
typedef void (*XTimeBasedEnableParamProc) (TimeBaseData *data,short index,Boolean enable);
typedef void (*XTimeBasedClearParamsProc) (TimeBaseData *data);
typedef short (*XTimeBasedGetNbrSonsProc) (const TimeBaseData *data);
typedef const MTimeBased *(*XTimeBasedGetSonIndProc) (const TimeBaseData *data,short index,long *itsType,long *itsID,Boolean *isGroup);
typedef const MTimeBased * (*XTimeBasedGetFatherProc) (const TimeBaseData *data);
typedef long (*XTimeBasedGetTypeProc) (const TimeBaseData *data);
//XDeformer
class XDeformer;
typedef void (*XDeformerDeformPointProc)(const XDeformer *This,const QuickFixVector3 *PP,QuickFixVector3 *res);
typedef void (*XDeformerDeformFacetsProc)(const XDeformer *This,Iterator *facets,void (*proc)(TFacette *,void *),void *priv);
typedef void (*XDeformerDeformPatchesProc)(const XDeformer *This,Iterator *patchs,void (*proc)(TPatch *,void *),void *priv);
typedef void (*XDeformerSetBoxProc)(XDeformer *This,const QuickFixVector3 *min,const QuickFixVector3 *max);
//XMotionLink
class MotionLink;
typedef short (*XMotionLinkGetNbrFreedomProc)(const MotionLink *This);
typedef void (*XMotionLinkGetFreedomRangeProc)(const MotionLink *This,short index,QuickFix *min,QuickFix *max);
typedef void (*XMotionLinkGetTransformProc)(const MotionLink *This,QFixMatrix33 *RR,QuickFixVector3 *TT);
typedef void (*XMotionLinkGetDerivativeProc)(const MotionLink *This,short index,QFixMatrix33 *RR,QuickFixVector3 *TT);
typedef void (*XMotionLinkIncrementFreedomValueProc)(MotionLink *This,short index,const QuickFix *value);
//XTimeLineM
typedef long (*XTimeLineMGetTimeScaleProc)(XTimeLineM* This);
typedef void (*XTimeLineMSetTimeScaleProc)(XTimeLineM* This, const long ticks);
typedef long (*XTimeLineMGetPixelsProc)(XTimeLineM* This);
typedef void (*XTimeLineMSetPixelsProc)(XTimeLineM* This, const long pixels);
typedef long (*XTimeLineMGetSnapProc)(XTimeLineM* This);
typedef void (*XTimeLineMSetSnapProc)(XTimeLineM* This, const long snap);
typedef long (*XTimeLineMPixelsToTicksProc)(XTimeLineM* This, const long pixels);
typedef long (*XTimeLineMTicksToPixelsProc)(XTimeLineM* This, const long ticks);
typedef void (*XTimeLineMSetTimeBasePosProc)(XTimeLineM* This, TimeBaseData* tb, const LPoint* orig, RDPoint* size);
typedef void (*XTimeLineMDrawTimeBaseProc)(XTimeLineM* This, SDGraphicDevice* aGD, const LRect* zone, TimeBaseData* tb, Boolean selected);
typedef Boolean (*XTimeLineMIsTimeBaseExpandedProc)(XTimeLineM* This, TimeBaseData* tb);
typedef void (*XTimeLineMExpandTimeBaseProc)(XTimeLineM* This, TimeBaseData* tb, Boolean expand);
typedef void (*XTimeLineMOnTimeBaseMouseActionProc)(XTimeLineM* This, TimeBaseData* tb, const LPoint *mousePos,const RPlatformEvent* event,const RDPoint *threshold);
typedef void (*XTimeLineMDeselectAllProc)(XTimeLineM* This, long redraw);
typedef long (*XTimeLineMCalcWidthProc)(const XTimeLineM* This);
typedef void (*XTimeLineMCalcPosProc)(XTimeLineM* This,RDRect *extent);
typedef short (*XTimeLineMGetCursorIDProc)(XTimeLineM* This, const LPoint* mousePos, const RPlatformEvent* event, short tool);
//TreeBehavior
class XTreeBehavior;
class TTree;
#define kXTreeBehaviorDefault 0
#define kXTreeBehaviorTrackT 1
#define kXTreeBehaviorTrackR 2
typedef void (*XTreeBehaviorApplyProc)(const XTreeBehavior *This,TTree *atree);
typedef void (*XTreeBehaviorSetGlobalTransformProc)(const XTreeBehavior *This,TTree *atree,const QFixMatrix33 *RR,const QuickFixVector3 *TT,short mode);
#endif